Today's Question:  What does your personal desk look like?        GIVE A SHOUT

SEARCH KEYWORD -- Programming test



  A Sip of Go Log

Logging is indispensable in any code that we need its support both in debugging and in statistics. However, a package that filled withfmt.Println/fmt.Printf printing various messages can never be considered a read-to-be-adopted package, which can be optimized by a simple change, using Golang’s native log package to print information to standard output or to a file. Then, how to apply the log package? Are there any limitations? If so, can we seek open-source packages? Let&rsq...

   GOLANG,LOGGING     2022-06-16 05:43:24

  How Query Optimizer Works in RDBMS

In a previous post, we discussed how the various relational operators are implemented in relational database systems. If you have read that post, you probably still remember that there are a few alternative implementations for every operator. Thus, how should RDBMS determine which algorithm (or implementation) to use? Obviously, to optimize the performance for any query, RDBMS has to select the correct the algorithm based on the query. It would not be desirable to always use the same algori...

   DATABASE,DATABASE DESIGN,DATABASE OPTIMIZATION     2019-04-20 07:26:32

  Fear of Ignorance

This past week, I was interviewing a candidate for a VP role along with two of our engineering leads. Everyone in the room excluding myself was classically “technical” – they could write code, had experience solving hard software problems and a background in computer science. I wrote my last line of PHP in 2004, and it had to be rewritten by a real programmer within 6 months.During the interview, we had the following exchange (due to an imperfect memory, I’ll ...

   Leader,Team,Technical,Leadership,Ignorence     2011-11-21 10:03:03

  Rediscovering the RSync Algorithm

A:Ok, you’re synchronizing this over the web; and what do you use for the synchronization? B: Oh, we implemented the rsync algorithm. A: uhu. And what do you do with really big files? B: The same. A: And you also synchronise folders? B: Yes. A: And how do you do that? B: we iterate over the folder, using the algorithm on every file, recursing over subfolders. A: Can you try 2 things for me? First, a very large file; and second, a large codebase, and see if it holds. Introduction First ...

   ReSync algorithm,Discovery     2012-02-14 10:47:24

  Write Scalable, Server-side JavaScript Applications with Node.js

If you live in the Silicon Valley area, you have already heard the buzz: Node.js is being hailed as the next big thing. It’s the silver bullet that offers scale, eases development, and can be leveraged by the vast pool of client-side JavaScript developers. So, what exactly is Node.js?Node.js is a server-side JavaScript environment that uses an asynchronous event-driven model. It is based on Google's V8 JavaScript engine plus several built-in libraries. The excitement around Node.js is tha...

   Node.js,Server side,Scalable,JavaScript app     2012-03-29 13:50:50

  Put Your HTML in a Box

In the first article in this series, I walked through the basics of cascading style sheets (CSS) and showed how CSS can make your code easier to maintain. CSS allows you to keep your presentation rules separate from your content, and I showed you some of the benefits this separation provides. In this article, I’ll move forward with CSS and describe how to position elements on a page.The first step in understanding how to position elements is to understand the fundamental model of CSSâ€...

   HTML,Box,Div,Container,Format     2011-08-19 08:22:58

  The Essence of Google Dart: Building Applications, Snapshots, Isolates

WÑ–th thousands of programming languages floating around, why is Google introducing Google Dart? What can it possibly add? The short answer: the Google Dart team wanted a language well suited to modern application development, both on the server and the (mobile) client. Some of Dart's features address problems that languages like Java or Javascript have long had. Dart's Snapshots resemble Smalltalk images, allowing (nearly) instant application startup and wi...

   Dart,Google,Client side,Web,Language,Snapshort,Isolate     2011-10-24 11:41:16

  How expensive is a MySQL query?

Database access speed is always the bottle neck of many applications. Many application have large amount of data to search, retrieve and display nowadays. How do we improve the performance of our applications, how do we reduce the cost of database access? Apart from the design of database, the quality of the query is also one important factor to take care.  But before that, we need to know how much network traffic a query will consume. Yunyang,Zhang from Nubee in Singapore did some research...

   MySQL,Network traffic,Query     2013-04-09 05:13:33

  Why Software Projects are Terrible and How Not To Fix Them

If you are a good developer and you’ve worked in bad organizations, you often have ideas to improve the process.  The famous Joel Test is a collection of 12 such ideas.  Some of these ideas have universal acceptance within the software industry (say, using source control), while others might be slightly more controversial (TDD).  But for any particular methodology, whether it is universally accepted or only “mostly” accepted, there are a multitude of o...

   Software,Development,Debug,Design     2011-11-21 10:27:05

  #46 – Why software sucks

No one makes bad software on purpose. No benevolent programmer has ever sat down, planning out weeks of work, with the intention of frustrating people and making them cry. Bad software, or bad anything, happens because making things is hard, making good things doubly so. The three things that make it difficult are: Possessing the diverse skills needed not to suck.Understanding who you’re making the thing for.Orchestrating the interplay of skills, egos and constraints over the course of...

   Software design,Sucks,Software industry     2012-03-19 13:10:37